/*
 * ArbolBPlus.cpp
 *
 *  Created on: Oct 1, 2011
 *      Author: lore
 */

#include "ArbolBPlus.h"

bool ArbolBPlus::actualizarRegistro(RegistroAbstracto* registro) {
	bool res = false;

	nodoRaiz->actualizarRegistro(registro);

	return res;
}

ArbolBPlus::ArbolBPlus(string _FilePath, unsigned long _blockSize) {
	blocksFile = new BlocksFile(_FilePath,_blockSize);
	blockSize = _blockSize;
	if (blocksFile->getBlocksCount() == 0) {
		// Creo un nodo raiz en memoria, y lo guardo en el archivo
		nodoRaiz = NULL;

		if (blocksFile->createNewBlock((Block**)&nodoRaiz) == false) {
			cout << "ERROR FATAL." << endl;
		}
		blocksFile->updateBlock(nodoRaiz);
	}

	// obtengo el bloque 0, donde esta el nodo raiz
	blocksFile->getBlockById(0,(Block**)&nodoRaiz);

}
void ArbolBPlus::crearArbol(){


	// crea la raiz del arbol
	//	raiz = new NodoBPlus();
	//	raiz->nivelnodo = 1;
	//  raiz->cantreg = 0;



}

void ArbolBPlus::Insertar(int clave) {


}

void ArbolBPlus::Remover(int clave){

}

void ArbolBPlus::Buscar(int clave){


}

ArbolBPlus::~ArbolBPlus() {
	// TODO Auto-generated destructor stub
	delete blocksFile;
}
